package com.ruoyi.common.flowable;

import com.ruoyi.common.core.mapper.ActHiProcinstExtMapper;
import com.ruoyi.mapper.ActHiProcinstMapper;
import com.ruoyi.mapper.ActReDeploymentMapper;
import com.ruoyi.mapper.SysFormMapper;
import com.ruoyi.service.SysUserGroupServiceImpl;
import jakarta.annotation.Resource;
import lombok.Getter;
import org.flowable.engine.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Component;


/**
 * flowable 引擎注入封装
 * @author XuanXuan
 *
 */
@Component
@Getter
public class FlowServiceFactory {

    @Autowired
    protected SysFormMapper sysFormMapper;

    @Resource
    protected RepositoryService repositoryService;

    @Autowired
    protected ActReDeploymentMapper actReDeploymentMapper;

    @Resource
    protected RuntimeService runtimeService;

    @Resource
    protected IdentityService identityService;

    @Resource
    protected TaskService taskService;

    @Resource
    protected ActHiProcinstMapper actHiProcinstMapper;

    @Resource
    protected SysUserGroupServiceImpl userGroupService;

    @Resource
    protected ActHiProcinstExtMapper actHiProcinstExtMapper;

    @Resource
    protected FormService formService;

    @Resource
    protected HistoryService historyService;

    @Resource
    protected ManagementService managementService;

    @Qualifier("processEngine")
    @Resource
    protected ProcessEngine processEngine;

}
